home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cpp_libs / intrvews / xgrab.lha / xgrab / include / gframe.h < prev    next >
C/C++ Source or Header  |  1990-03-06  |  2KB  |  85 lines

  1. /**
  2.    GRAB Graph Layout and Browser System
  3.  
  4.    Copyright (c) 1989, Tera Computer Company
  5.  **/
  6.  
  7. // The frame surrounding the grab window.  Apart from the graph
  8. // attributes window, the top-level interactor
  9.  
  10. #ifndef gframe_h
  11. #define gframe_h
  12.  
  13. #include <InterViews/scene.h>
  14. #include <InterViews/graphic.h>
  15. #include "att.h"
  16. #include "graph.h"
  17. #include "curs.h"
  18. #include "mypanner.h"
  19.  
  20. class ButtonState;
  21. class Dialog;
  22. class Menu;
  23. class Viewport;
  24. class GView;
  25. class ButtonView;
  26. class TextView;
  27. class DrawView;
  28. class GrabWindow;
  29. class MyPanner;
  30. class Font;
  31. class FontHandler;
  32. class VBox;
  33. class HBox;
  34.  
  35. class GraphFrame : public MonoScene 
  36. {
  37. public:
  38.     GraphFrame(GView*, TextView*);
  39.     void SetCurs(Curs);
  40.     void UnsetCurs();            // go back to the default cursor
  41.       // interface to the textview
  42.     void ChangeStatusLine(char*, boolean now = false);
  43.     void ChangeGraphName(char*);
  44.     void ChangeFileName(char*);
  45.       // interface to the button view
  46.     void ChangeToggles(char[]);        // change the options menu
  47.       // interface to the fonthandler
  48.     void InitFonts();
  49.     void SetFont(int, int);
  50.     boolean TextFits();            
  51.     void ForceNL();
  52.     void NoForceNL();
  53.     void ForceEL();
  54.     void NoForceEL();
  55.     void SmallestFont(int*, int*);
  56.     void SetPS(char*);
  57.     int WidthPS(char*);
  58.       // interface to the panner
  59.     void ChangeZGrad(float);
  60.     Interactor* GetSide() { return panner->slider; };
  61.       // interface to the built-in attributes display
  62.     boolean ShapeSet();
  63.     boolean BrushSet();
  64.     boolean ColorSet();
  65.     NShape CurShape();
  66.     BType CurBrush();
  67.     CType CurColor();
  68.     void drawside();
  69.     HBox* GetNoframe() { return noframe; } ;
  70. private:
  71.     HBox* noframe;        // the side window and the graph view
  72.     GrabWindow* gwin;        
  73.     MyPanner* panner;
  74.     DrawView* dview;
  75.     VBox* sidewin;
  76.     Curs currentCursor;
  77.     FontHandler* fhandler;
  78.  
  79.     void Init();
  80.     void InitCursors();
  81.     void MakeFrame();
  82. };
  83.  
  84. #endif
  85.